package cn.iocoder.yudao.module.api.promotion.gift;

import cn.iocoder.yudao.module.api.promotion.gift.dto.GiftActivityVO;

import java.util.Collection;
import java.util.List;
import java.util.Map;

/**
 * <pre>
 * OOoO0OOoO0OOOooo0oOOOO0OOOOO0oooOO0ooOOO0Ooooo0OOOOo0ooooO0OOooo0Ooooo0OOOOO
 *  这里是文件说明
 * OOoO0OOoO0OOOooo0oOOOO0OOOOO0oooOO0ooOOO0Ooooo0OOOOo0ooooO0OOooo0Ooooo0OOOOO
 * </pre>
 *
 * @author 山野羡民（1032694760@qq.com）
 * @since 2025/01/18
 */
public interface GiftActivityApi {

    /**
     * 根据活动编号，获得活动信息
     *
     * @param id 活动编号
     * @return 活动信息
     */
    GiftActivityVO getDetail(Long id);

    /**
     * 已领数量
     *
     * @param userId 用户编号
     * @param ids 活动编号集合
     * @return 数量：活动编号集合 -> 数量
     */
    Map<Long, Integer> countReceived(Long userId, Collection<Long> ids);

    /**
     * 根据活动编号，获得活动信息
     *
     * @param ids 活动编号集合
     * @return 活动信息
     */
    List<GiftActivityVO> getList(Collection<Long> ids);

}
